第13天的內容有點多,以下附上網址:
https://www.youtube.com/watch?v=C4OkV6DrVRs&list=PL-g0fdC5RMboYEyt6QS2iLb_1m7QcgfHk&index=13
檔案操作流程
1.1 開啟檔案、操作檔案、關閉檔案
1.2 開啟模式、檔案編碼 UTF-8
1.3 最佳實務:使用 with ... as ... 語法
1.4 檔案物件
讀取檔案
2.1 一次讀取全部:read()
2.2 逐行讀取資料:使用 for 迴圈
寫入檔案
3.1 寫入字串到檔案中:write(字串)
3.2 寫入換行符號:\n
讀取、儲存 JSON 格式的資料
4.1 載入內建的 json 模組
4.2 讀取資料:json.load(檔案物件)
4.3 寫入資料:json.dump(資料, 檔案物件)
開啟檔案 -> 讀取或寫入 -> 關閉檔案
-開啟檔案
基本語法
檔案物件=open(檔案路徑,mode=開啟模式)
-開啟模式
讀取模式 - r
寫入模式 - w
讀寫模式 - r+
-操作檔案(讀取檔案)
讀取全部文字
檔案物件.read()
一次讀取一行
for 變數 in 檔案物件:
從檔案依序讀取美行文字到變數中
讀取 JSON 格式
import json
讀取到的資料=json.load(檔案物件)
寫入檔案(儲存檔案)
寫入文字
檔案物件.write(字串)
寫入換行符號
檔案物件.write("範例文字\n") # 寫入 \n 代表要換行
寫入 JSON 格式
import json
json.dump(要寫入的資料,檔案物件)
關閉檔案
基本語法
檔案物件.close()
-最佳實務
with open(檔案路徑,mode=開啟模式) as 檔案物件 # 以上區塊會自動、安全的關閉檔案
讀取或寫入檔案的程式
file=open("data.txt",mode="w") # 開啟
file.write("Hello file\nSecond Line") # 3.1寫入字串到檔案中:write(字串) 3.2寫入換行符號:\n
file.close() # 關閉
寫入成功後會跑出 data.txt
file=open("data.txt",mode="w",encoding="utf-8") # 要用中文的話,最常使用的是 "utf-8"
file.write("測試中文")
file.close()
最佳實務
with open("data.txt",mode="w",encoding="utf-8") as file: # 使用最佳實務的話,會自動 close 並清空記憶體
file.write("測試中文")
with open("data.txt",mode="r",encoding="utf-8") as file:
data=file.read()
print(data)
把檔案中的數字資料,一行一行讀取出來,並計算總合
with open("data.txt",mode="w",encoding="utf-8") as file:
file.write("5\n3")
sum=0
with open("data.txt",mode="r",encoding="utf-8") as file:
for line in file:
sum+=int(line)
print(sum)
import json
with open("config.json",mode="r") as file:
data=json.load(file)
print(data) # data 是一個字典資料
print("name",data["name"])
print("version",data["version"])
data["name"]="New Name" # 修改變數中的資料
with open("config.json",mode="w") as file:
json.dump(data, file)
其實個人對於今天的教學內容不是很懂,我可能需要再重新研究一次才行。